/*************************************************************
 * Title: IUserService.java
 * Description: 
 * Author: Huang Shaobin
 * Email: huangshaobin@qtt.cn
 * CreateTime: Feb 22, 2013 4:50:46 PM
 ************************************************************/
package snow.biz.system.service;

import java.util.List;

import snow.biz.basic.service.IBaseService;
import snow.biz.system.model.User;
import snow.core.domain.Pagination;
import snow.core.exceptions.BusinessException;
import snow.core.persistence.Conditions;
import snow.core.persistence.Order;
import snow.core.security.PrincipalService;

/**
 *
 */
public interface IUserService extends IBaseService, PrincipalService {

	Integer createUserFrom(User user) throws BusinessException;

	void deleteUserFrom(User user) throws BusinessException;

	void modifyUserFrom(User user) throws BusinessException;

	void removeUserFrom(User user) throws BusinessException;

	User searchUserFrom(Integer id) throws BusinessException;

	Pagination searchUsersForPagingFrom(Conditions conditions, List<Order> orders, int start, int limit) throws BusinessException;

	List<User> searchUsersFrom(Conditions conditions, List<Order> orders, int start, int limit) throws BusinessException;

}
